package com.ruoyi.user.service;

import java.util.List;
import com.ruoyi.user.domain.TbUserVerification;

/**
 * 认证审核Service接口
 * 
 * @author ruoyi
 * @date 2025-07-30
 */
public interface ITbUserVerificationService 
{
    /**
     * 查询认证审核
     * 
     * @param verificationId 认证审核主键
     * @return 认证审核
     */
    public TbUserVerification selectTbUserVerificationByVerificationId(Long verificationId);

    /**
     * 查询认证审核列表
     * 
     * @param tbUserVerification 认证审核
     * @return 认证审核集合
     */
    public List<TbUserVerification> selectTbUserVerificationList(TbUserVerification tbUserVerification);

    /**
     * 新增认证审核
     * 
     * @param tbUserVerification 认证审核
     * @return 结果
     */
    public int insertTbUserVerification(TbUserVerification tbUserVerification);

    /**
     * 修改认证审核
     * 
     * @param tbUserVerification 认证审核
     * @return 结果
     */
    public int updateTbUserVerification(TbUserVerification tbUserVerification);

    /**
     * 批量删除认证审核
     * 
     * @param verificationIds 需要删除的认证审核主键集合
     * @return 结果
     */
    public int deleteTbUserVerificationByVerificationIds(Long[] verificationIds);

    /**
     * 删除认证审核信息
     * 
     * @param verificationId 认证审核主键
     * @return 结果
     */
    public int deleteTbUserVerificationByVerificationId(Long verificationId);

    /**
     * 通过认证审核
     * 
     * @param verificationId 认证审核主键
     * @return 结果
     */
    public int approveVerification(Long verificationId);

    /**
     * 驳回认证审核
     * 
     * @param verificationId 认证审核主键
     * @param rejectReason 驳回原因
     * @return 结果
     */
    public int rejectVerification(Long verificationId, String rejectReason);
}